1. Field of the Invention
The present invention relates generally to methods and systems to serve data over a network, and in particular to automatically generate video-based tests to distinguish human users from computer software agents in a communications network.
2. Background
CAPTCHA stands for “Completely Automated Public Turing Test to Tell Computers and Humans Apart”. A CAPTCHA is a test that can be automatically generated, which most human can pass, but that current computer programs cannot pass. CAPTCHAs have been used to prevent automated software (“robots” or bots) from performing actions that are intended specifically for humans, such as account registration, service provisioning, bill payment, and so forth. Excessive use of such services by robots quickly leads to degradation of the quality of service of a given system, as well as problems in fraud and spam. The concept behind CAPTCHAs arises from real world problems faced by many Internet companies. Various online business offer free services, such as email accounts, that have suffered from a specific type of attack: bots can sign up for thousands of email accounts every minute from which the bots could send out junk mails. Similarly, business that sell limited items in high demand, such as online ticket brokers, are subject to attack in which bots are used to purchase large quantities of tickets, for resale at higher prices. CAPTCHAs offer a plausible solution to solve these problems: a human user is required to solve a CAPTCHA test before he/she receives an email account, completes a transaction, and so forth.
Currently there exists a variety of CAPTCHA implementations that provide different types of tasks. Types of tasks include: text recognition, image recognition, and speech recognition. GIMPY and EZ-GIMPY are two of many CAPTCHAs based on the difficulty of reading distorted text. GIMPY works by selecting several words out of a dictionary and rendering a distorted image containing the words. GIMPY then displays the distorted image, and requires the human user to input the words in the image. Given the types of distortions that GIMPY uses, most humans can read the words from the distorted image, but current computer programs cannot. The majority of CAPTCHAs used on the Web today are similar to GIMPY in that they require the user to correctly identify some content in a distorted image.
PIX is an imaged-based CAPTCHA. PIX has a large database of labeled images. All of the pictures stored in the database are pictures of well known objects, such as a horse, a table, a flower, etc, each of which are labeled with the appropriate name of the object. PIX picks an object label at random (e.g., “horse”), finds six images of having that object label from its image database, presents the images to a user. The user must then input a label that correctly matches the known label for the object.
The underlying assumption of these types of CAPTCHAs is that current image recognition algorithms run by computer software agents cannot match human performance in identifying the content of images. But many of the CAPTCHAs in use face challenges due to the increasing sophistication of both image recognition methods. In particular, robots can take advantage of the vast corpus of images available on the Internet to serve as a basis for training image recognition algorithms. Further, because CAPTCHAs are ultimately designed by human programmers, with varying level of skill, robots are able to exploit poorly designed CAPTCHAs. In sum, many existing CAPTCHAs are not well implemented, and as a result are easily broken by robots. CAPTCHA designers typically respond to this threat by making the tests increasingly difficult. The result however is that the CAPTCHA test is too difficult for human users to consistently pass. This results in frustration by human users, and a potential decline in human use of the services being offered.